package edu.tms.controller.common;

import edu.tms.bean.ApplicationInfo;
import edu.tms.bean.ClassActivity;
import edu.tms.bean.ClassFee;
import edu.tms.bean.CourseAttendance;
import edu.tms.bean.DormCheck;
import edu.tms.bean.Grade;
import edu.tms.bean.Homework;
import edu.tms.bean.SchoolLife;
import edu.tms.bean.Squad;
import edu.tms.bean.Student;

/**
 * 班干部Action公共接口
 * @author Administrator
 *
 */
public interface CadreController extends CommonController{
	
	
	/**
	 * 查看学生成绩统计//学习委员
	 * 根据班级id查询班级所有成绩统计
	 * @return
	 * @throws Exception
	 */
	abstract public String queryStuGrade(int classId,int pageNo);
	/**
	 * 修改学生成绩//学习委员
	 * 根据学生id查询学生信息更该学生成绩
	 * @return
	 * @throws Exception
	 */
	abstract public String updateStuGrade(Student stu);
	/**
	 * 查看学生作业统计//学习委员
	 * 根据作业id查询作业统计
	 * @return
	 * @throws Exception
	 */
	abstract public String queryHomeworkCount(int hoemWorkId,int pageNo);
	/**
	 * 修改学生作业统计//学习委员
	 * 根据作业id查询学生提交的作业修改学生作业评分
	 * @return
	 * @throws Exception
	 */
	abstract public String updateHomeworkCount(Homework hoemwork);

	/**
	 * 财务明细查看//生活委员
	 * 根据班级id查询班级财务信息
	 * @return
	 * @throws Exception
	 */
	abstract public String queryClassFee(int classId,int pageNo);
	/**
	 * 财务明细添加//生活委员
	 * 根据财务id查询财务信息添加财务信息
	 * @return
	 * @throws Exception
	 */
	abstract public String appendClassFee(ClassFee classfee);

	/**
	 * 寝室考勤查看//生活委员
	 * 根据寝室id 查询寝室考勤情况
	 * @return
	 * @throws Exception
	 */
	abstract public String queryDormCheck(int dormId,int pageNo);
	/**
	 * 寝室考勤添加//生活委员
	 * 根据寝室考勤id查询寝室信息添加寝室考勤信息
	 * @return
	 * @throws Exception
	 */
	abstract public String appendDormCheck(DormCheck dormCheck);
	
	/**
	 * 小组查看//班长
	 * 根据小组id查询小组信息
	 * @return
	 * @throws Exception
	 */
	abstract public String querySquadInfo(int squadId,int pageNo);
	/**
	 * 小组修改//班长
	 * 根据小组id查询小组信息修改小组信息
	 * @return
	 * @throws Exception
	 */
	abstract public String updateSquadInfo(Squad squad);


	/**
	 * 考勤信息查看//班长
	 * 根据课程id查看考勤信息
	 * @return
	 * @throws Exception
	 */
	abstract public String queryAttendance(int courseId);
	/**
	 * 考勤信息添加（课程）//班长
	 * 根据课程考勤id查看考勤信息添加
	 * @return
	 * @throws Exception
	 */
	abstract public String appendAttendance(CourseAttendance courseAttendance);
	
	/**
	 * 考勤信息修改（程课）//班长
	 * 根据根据课程考勤id查看考勤信息修改
	 * @return
	 * @throws Exception
	 */
	abstract public String updateAttendance(CourseAttendance courseAttendance);
	
	/**
	 * 成绩统计查看//班长
	 * 根据考试id查看成绩信息
	 * @return
	 * @throws Exception
	 */
	abstract public String queryGradeCount(int examId,int pageNo);
	
	/**
	 * 成绩统计添加//班长
	 * 根据成绩id查看成绩信息添加
	 * @return
	 * @throws Exception
	 */
	abstract public String appendGradeCount(Grade grade);
	
	/**
	 * 成绩统计修改//班长
	 * 根据成绩id查看成绩信息修改
	 * @return
	 * @throws Exception
	 */
	abstract public String updateGradeCount(Grade grade);
	
	/**
	 * 入党添加//团支书
	 * 根据入党id查看入党信息添加
	 * @return 
	 * @throws Exception
	 */
	abstract public String appendApplicationInfo(ApplicationInfo applicationInfo);
	
	/**
	 * 入党查看//团支书
	 * 
	 * @return 
	 * @throws Exception
	 */
	abstract public String queryApplicationInfo(int pageNo);
	
	/**
	 * 入党修改//团支书
	 * 根据入党id查看入党信息修改
	 * @return 
	 * @throws Exception
	 */
	abstract public String updateApplicationInfo(ApplicationInfo applicationInfo);

	/**
	 * 组员管理查看(有误提交给班长)//组长
	 * 根据小组id查询小组信息
	 * @return 
	 * @throws Exception 
	 */
	abstract public String queryStuSquad(int squadId,int pageNo);
	/**
	 * 组员作业信息（有误提交给学习委员）//组长
	 * 根据作业id
	 * @return 
	 * @throws Exception
	 */
	abstract public String queryStuSquadHomework(int homeWorkId,int squadId,int pageNo);
	
	/**
	 * 组员考勤信息(有误提交给班长)//组长
	 * 根据考勤号
	 * @return
	 * @throws Exception
	 */
	abstract public String queryStuSquadCheck(int checkNo,int squadNo,int pageNo);
	
	/**
	 * 班级活动添加//宣传委员
	 * 根据班级号
	 * @return
	 * @throws Exception
	 */
	abstract public String appendClassActive(ClassActivity classActive);
	/**
	 * 班级活动查看//宣传委员
	 * 根据班级号查询
	 * @return
	 * @throws Exception
	 */
	abstract public String queryClassActive(int classNo,int pageNo);
	/**
	 * 学生校园历程添加
	 * 根据学号添加
	 * @return 
	 * @throws Exception
	 */
	abstract public String appendSchoolLife(SchoolLife schoolLife);
	/**
	 * 学生校园历程查看
	 * 根据学生号查询
	 * @return 
	 * @throws Exception
	 */
	abstract public String querySchoolLife(int stuNo,int pageNo);
	
}


